package swing;

import java.util.ArrayList;

import javax.swing.JLabel;
import javax.swing.JTextField;
import javax.swing.table.DefaultTableModel;
import javax.swing.table.TableColumn;

import org.h2.java.lang.Integer;

import logica.FachadaControleUsuario;


import pojo.CategoriaUsuario;

public class FormCad03 extends FormCadPadrao{
	private JLabel text1, text2;
	private JTextField campo1, campo2;
	private FachadaControleUsuario fachada = new FachadaControleUsuario();
	private ArrayList<CategoriaUsuario>lista;
	
	public FormCad03(){
		lista = new ArrayList();
		incluir();
	}
	
	private void incluir(){
		painel2.setLayout(null);
		text1 = new JLabel("Id Categoria:");
		text2 = new JLabel("Descrição Categoria:");
		campo1 = new JTextField();
		campo2 = new JTextField();
		
		text1.setBounds(10, 15, 100, 20);
		campo1.setBounds(120, 15, 100, 20);
		text2.setBounds(250, 15, 160, 20);
		campo2.setBounds(450, 15, 400,20);
		painel2.add(text1);
		painel2.add(campo1);
		painel2.add(text2);
		painel2.add(campo2);
		atualizarLista();
		atualizarTabela();
	}
	
	private void atualizarLista(){
		lista = fachada.getCategoriaUsuario();
		setTamanhoLista(lista.size());
	}
	
	private void atualizarTabela(){
	    DefaultTableModel modelo = new DefaultTableModel();
		tabela.setModel(modelo);
		modelo.addColumn("Id");
		modelo.addColumn("Descrição");
		for (CategoriaUsuario c: lista){
			modelo.addRow(new Object[]{c.getId(), c.getNome()});
		}	
	}
	
	
	protected void exibirCampos(){
		campo1.setText(String.valueOf(this.lista.get(posicaoAtual).getId()));
		campo2.setText(this.lista.get(posicaoAtual).getNome());
		this.tabela.getSelectionModel().setSelectionInterval(posicaoAtual, posicaoAtual);
	}
	


}
